//该文件专门用于创建整个应用的路由器
import VueRouter from 'vue-router'
import About from '../pages/About-test';
import Home from '../pages/Home-test';
import News from '../pages/News-test';
import Message from '../pages/Message-test';
import Detail from '../pages/Detail-test';
const router= new VueRouter({
    routes:[
        {
            name:'guanyu',
            path:'/about',
            component:About,
            meta:{isAuth:true,title:'关于'},
        },
        {
            name:'zhuye',
            path:'/home',
            component:Home,
            meta:{title:'主页'},
            children:[
                {
                    name:'xinwen',
                    path:'news',
                    component:News,
                    meta:{isAuth:true,title:'新闻'},
                    /* beforeEnter: (to, from, next) => {//独享路由守卫只有前置没有后置
                        if(to.meta.isAuth){//判断是否需要鉴权
                            if(localStorage.getItem('school')==='heima'){
                                next()
                            }else{
                                alert('学校名不对，无权限查看!!!')
                            }
                        }else{
                            next()
                        }
                    } */
                },
                {
                    name:'xiaoxi',
                    path:'message',
                    component:Message,
                    meta:{isAuth:true,title:'消息'},
                    children:[
                        {
                            name:'xiangqing',
                            path:'detail',
                            component:Detail,
                            meta:{title:'详情 '},
                            /* //props第一种写法，值为对象,该对象中的所有key-value都会以props的形式传给Detail组件
                            props:{
                                a:1,
                                b:'hello'
                            } */

                            /* //props第二种写法，值为布尔值,若布尔值为真，就会把该路由组件收到的所有params参数，以props的形式传给Detail组件
                            props:true, */

                            //props第三种写法，值为函数
                            props($route){
                                return {
                                    id:$route.query.id,
                                    title:$route.query.title,
                                    a:666,
                                    b:'hello'
                                }
                            }
                        }
                    ]
                },
            ]
        },
    ]
})

/* //路由每次切换前或初始化的时候被调用的函数(全局前置路由守卫)
router.beforeEach((to,from,next)=>{
    console.log(to,from)
    if(to.meta.isAuth){//判断是否需要鉴权
        if(localStorage.getItem('school')==='heima'){
            next()
        }else{
            alert('学校名不对，无权限查看!!!')
        }
    }else{
        next()
    }
}) */

//路由每次切换后或初始化的时候被调用的函数(全局后置路由守卫)
router.afterEach((to,from)=>{
    document.title=to.meta.title || 'heima系统'
})

export default router